package myWindows;

import java.awt.FlowLayout;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JTextField;

import miscelaneos.JUtilities;

public class JTestListener extends JMyVentana {
    private JTextField myTexto;
    private JLabel myLabel;
    
    //Clase Oyente del ActionListener
    class MyListener implements ActionListener{
        public void actionPerformed(ActionEvent e) {
            JUtilities.showMessageError("Bienvenido: " + myTexto.getText());
        }
    }

    public JTestListener() {
        InitGUI();
    }
    
    public void InitGUI(){
        // Colocamos el FlowLayout
        this.getContentPane().setLayout(new FlowLayout());
        
        //Agregar una etiqueta
        myLabel = new JLabel("Ingresa su nombre");
        this.getContentPane().add(myLabel);
        
        //Agrego un TextField
        myTexto = new JTextField(30);
        this.getContentPane().add(myTexto);
        
        //Agrego un boton
        JButton myBoton = new JButton("Aceptar");
        this.getContentPane().add(myBoton);
        
        //Asignar el Oyente del ActionListener unicamente al boton
        myBoton.addActionListener(new MyListener());
        
        
        //Agrego un segundo boton para crear un listener como clase anonima
        JButton myBoton2 = new JButton("Aceptar");
        this.getContentPane().add(myBoton2);
        
        //He asignado un oyente al ActionListener como clase anonima
        myBoton2.addActionListener(new ActionListener(){
                    public void actionPerformed(ActionEvent e) {
                        JUtilities.showMessageError("Bienvenido: " + myTexto.getText());
                        myTexto.requestFocus();
                        myTexto.selectAll();
                    }
                });
        
    }

    public static void main(String[] args) {
        JTestListener jTestListener = new JTestListener();
        jTestListener.setVisible(true);
        jTestListener.setResizable(true);
    }
}
